package com.ruoyi.project.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 第三方授权对象 social_userconnection
 * 
 * @author ruoyi
 * @date 2020-04-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("social_userconnection")
public class SocialUserconnection extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String userid;

    /** 授权类型 */
    @TableField(value = "providerId")
    private String providerId;

    /** 授权标识 */
    @TableField(value = "providerUserId")
    private String providerUserId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long rank;

    /** 账户名称 */
    @Excel(name = "账户名称")
    private String displayName;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private String profileUrl;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private String imageUrl;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private String accessToken;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private String secret;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private String refreshToken;

    /** $column.columnComment */
    @Excel(name = "账户名称")
    private Long expireTime;

    /** 租户id */
    @Excel(name = "租户id")
    private Long tenantId;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("userid", getUserid())
            .append("providerid", getProviderId())
            .append("provideruserid", getProviderUserId())
            .append("rank", getRank())
            .append("displayname", getDisplayName())
            .append("profileurl", getProfileUrl())
            .append("imageurl", getImageUrl())
            .append("accesstoken", getAccessToken())
            .append("secret", getSecret())
            .append("refreshtoken", getRefreshToken())
            .append("expiretime", getExpireTime())
            .append("createTime", getCreateTime())
            .append("tenantId", getTenantId())
            .toString();
    }
}
